A. Field of the Invention
The present invention relates generally to high availability computer system architectures, and in particular to apparatus, systems, and methods for a high-availability computer system architecture using high-speed pipes.
B. Description of the Related Art
Conventional high-availability computer systems use special purpose, dedicated systems for implementing redundancy. For example, some conventional systems utilize two computer systems, one of which is active and the other standby, and special purpose hardware and software that interacts with each computer system to implement high-availability. The special purpose hardware and software communicates with the active computer system to capture status information so that in the event the active system goes down the standby system can start in place of the active system using the information collected by the special purpose hardware and software.
Thus, conventional high-availability computer system architectures require special purpose hardware and software, which raises system costs. The additional costs make these systems very expensive. There is, therefore, a need for a high-availability computer system architecture that solves the problems associated with special purpose hardware and software high-availability systems.
Apparatus, systems, and methods consistent with the present invention utilize available high-speed pipes to transfer information necessary for high-availability between two computer systems. In one embodiment, one or more logical pipes are implemented on a physical pipe between two computer systems. The use of the term pipe refers to a communication channel. A physical pipe refers to a physical communication channel. A logical pipe refers to a logical communication channel, and high-availability information refers to data transferred between systems for purposes of implementing a high-availability architecture. The logical pipes are used for data transfer between an active system and a standby system so that the standby system has the information necessary to take over from the active system if the active system fails in some way. In one embodiment, the logical pipes that transfer information necessary for implementing high-availability are part of a physical pipe that also carries other types of information used by the active system.
The system may also use network interface cards to implement the high-speed pipes. The network interface cards (NIC) may be implemented using conventional interface cards without departing from the principles of the invention. For example, a NIC using Virtual Interface (VI) Architecture may be used.
By using logical pipes on existing physical pipes, there are significant cost savings as compared to conventional systems that require dedicated pipes to transfer the high-availability information. Moreover, by using network interface cards, additional cost savings may be realized. Logical pipes and network interface cards may also be used in combination. Because the architecture reduces or eliminates special purpose hardware and software, costs are significantly reduced.
An apparatus consistent with the present invention comprises a physical pipe for transferring data between an active system and a standby system. The apparatus further comprises a first logical pipe for transferring data over the physical pipe, and a second logical pipe for transferring high-availability data over the physical pipe.
Another apparatus consistent with the present invention comprises a physical pipe for transferring data between an active system and a standby system. The apparatus further comprises network interface card for transferring data and high-availability information over the physical pipe.
Yet another apparatus consistent with the present invention includes a physical pipe for transferring data between an active system and a standby system. The apparatus further comprises a first logical pipe for transferring checkpointing data over the physical pipe, and a second logical pipe for transferring total system state data over the physical pipe.
A system consistent with the present invention comprises a physical pipe. The system further comprises an active system for transferring data and high-availability information over the physical pipe, and a standby system for receiving the high-availability information from the physical pipe.
A method in a high-availability system having an active system and a standby system is provided. According to this method, the active system sends a message to the standby system to enter a switch-over state. The standby system monitors a transfer complete marker. The method transfers total system state from the active system to the standby system. The method switches the high-availability system from the active system to the standby system upon detecting the transfer complete marker.
Such apparatus, systems, and methods overcome the problems of conventional high-availability architectures described above. Additional advantages of the invention are apparent from the description which follows, and may be learned by practice of the invention. It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the invention, as claimed.